//Copyright (c) Microsoft Corporation.  All rights reserved.

using System;
using System.Collections.Generic;
using System.Text;
using Eas.WebCrawler.Model.Core;

namespace Eas.WebCrawler.Model.Actions {
    internal interface ProcessingAction {
        IAsyncResult BeginAction(WorkerContext context, BaseProcessingState state, AsyncCallback callback);
        ProcessingAction EndAction(WorkerContext context, BaseProcessingState state, IAsyncResult result);
        void PerformCompletingAction(WorkerContext context, BaseProcessingState state, IAsyncResult result);
        Eas.WebCrawler.Interfaces.WorkerState WorkerState {get;}
        ActionId ActionId { get;}
    }
}
